Wireless sensor network and data sensing method thereof

ABSTRACT

A wireless sensor network and data sensing method thereof are provided. A prediction model is established according to sensed data. When statistical value of the sensed data is within a user allowable range, the average value of the sensed data is returned to a user based on the prediction model. Alternatively, when the statistical value of the sensed data is beyond the user allowable range, actually sensed data is returned to the user based on the prediction model. In addition, the prediction model may further be dynamically updated according to subsequently received sensed data.

This application claims the benefit of Taiwan application Serial No.97147533, filed Dec. 5, 2008, the subject matter of which isincorporated herein by reference.

BACKGROUND

1. Field of the Invention

The invention relates in general to a wireless sensor network, and moreparticularly to a wireless sensor network for dynamically adjustingdetection behavior of sensors according to periodic property of senseddata.

2. Description of the Related Art

A wireless sensor network (WSN) may be applied to such as detection offorest ecology monitor, detection of the concentration of carbon dioxidein the factory, or the indoor monitor. In the wireless sensor network, awireless sensor for sensing, collecting, and returning data plays animportant role.

In the prior art, the wireless sensor detects environment variables andreturns data according to a sense frequency (sense interval) specifiedby an administrator. When the sense interval is longer (sense times arefewer), more energy is saved but less sensed data is obtained. When thesense interval is shorter (the sense times are more), more sensed datamay be obtained but the power-consumption could be greater. This isbecause the power consumption could be relatively great when thewireless sensor is in sensing or transceiving data. In addition, thewireless sensor is usually powered by a battery, and it is hard tocharge the battery if in outdoor environment.

Thus, how to save the power consumption of the wireless sensor hasbecome a very important issue. At present, the power-saving mechanismfor the wireless sensor is emphasized on the power consumption intransmitting or sensing, but the effect is poor.

In view of this, it needs a data sensing method for analyzing the trendof data collected by the wireless sensor, and for dynamically adjustingthe detection behavior (i.e., whether to sense or not) of the wirelesssensor according to property of data period).

SUMMARY OF THE INVENTION

The invention is directed to a wireless sensor network and a datasensing method, for establishing a prediction model according to senseddata, wherein the statistical value of the previously sensed data isreturned to the user if within the allowable error range and theconfidence level. Alternatively, the actually sensed data is returned tothe user if necessary.

According to a first example of the present invention, a wireless sensornetwork is provided. The wireless sensor network includes: a dataprocessing module for outputting a sense command; and a data collectionmodule for receiving the sense command outputted from the dataprocessing module and thus collecting source data and returning to thedata processing module. The data processing module finds a trend of thesource data to establish a prediction model. The data processing moduleupdates the sense command and sends the updated sense command to thedata collection module based on the established prediction model. Thedata collection module determines whether data collection is performedor not at a sense time point according to the sense command. The datacollection module collects the source data and returns to the dataprocessing module if data collection is performed. The data processingmodule obtains predicted data according to the previous source data ifdata collection is not performed.

According to a second aspect of the present invention, a data sensingmethod in a wireless sensor network is provided. The method includes thesteps of: outputting a sense command; sensing an source data accordingto the sense command; finding a trend of the source data to establish aprediction model; updating the sense command based on the establishedprediction model; determining whether data sensing is performed at asense time point or not according to the updated sense command; sensingthe source data and returning to a user if data sensing is performed;and obtaining predicted data and returning to the user according to theprevious source data if data sensing is not performed.

The invention will become apparent from the following detaileddescription of the preferred but non-limiting embodiments. The followingdescription is made with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration showing a wireless sensor networkaccording to an embodiment of the invention.

FIG. 2 is a flow chart showing the operation of a prediction module 122according to the embodiment of the invention.

FIG. 3A shows an example of segmenting source data T having a period P.

FIG. 3B shows a result after the segments of data T1 to T4 of FIG. 3Aare stacked.

FIG. 3C shows an example of prediction points and sense points.

FIG. 3D shows an example of prediction points, sense points and checkpoints.

FIG. 4 shows the operation flows of a data collection module 110 and adata processing module 120.

FIG. 5A shows data in time domain, while FIG. 5B shows data in frequencydomain.

DETAILED DESCRIPTION OF THE INVENTION

In embodiment of the invention, data is collected and periodicity of thecollected data is calculated. Next, the collected data is stackedtogether and the trend of the collected data is analyzed based on itsperiodicity in order to determine that whether to collect (sense) datain the future.

FIG. 1 is a schematic illustration showing a wireless sensor network 100according to an embodiment of the invention. Referring to FIG. 1, thewireless sensor network 100 according to the embodiment of the inventionincludes a data collection module 110 and a data processing module 120.The data collection module 110 includes a processing unit 111, awireless sensor 112, an execution module 113 and a radio frequency (RF)module 114. The data processing module 120 includes a processing unit121, a prediction module 122, a database 123 and a radio frequency (RF)module 124.

The data collection module 110 collects data according to a commandtransmitted from the data processing module 120 and returns thecollected data to the data processing module 120. After the dataprocessing module 120 receives data returned by the data collectionmodule 110, a trend of the collected data is found to establish aprediction model and to dynamically adjust (update) the predictionmodel.

Based on the established prediction model, the data processing module120 determines whether or not the data collection module 110 collectsdata in future. Accordingly, the data collection module 110 performsdata collection or not based on the determination of the data processingmodule 120.

The processing unit 111 performs local computation, such as commandanalyzing. The processing unit 111 has basic computing ability, maydetermine the sense period, and may control the wireless sensor 112 toreturn the sensed result (i.e. the collected data) to the dataprocessing module 120 through the RF module 114.

The wireless sensor 112 is controlled by the processing unit 111 and theexecution module 113. The wireless sensor 112 performs data collection,sense, and the like. Data collected by the wireless sensor 112 istransmitted to the data processing module 120 through the RF module 114.The wireless sensor 112 may be a multi-purpose sensor for sensingvarious environment variables including temperature, humidity,luminance, pressure, gas concentration, and the like.

The execution module 113 analyzes the command transmitted from the dataprocessing module 120 and thus determines whether the wireless sensor112 performs data collection or not.

The RF module 114 receives and transmits data between the datacollection module 110 and the data processing module 120.

The processing unit 121 performs local computing and data analyzing. Theprediction module 122 establishes the prediction model according to datacollected by the data collection module 110. The database 123 storesdata collected by the data collection module 110. The RF module 124receives and transmits data between the data collection module 110 andthe data processing module 120.

The operations of the prediction module 122, about how the predictionmodel is established according to data collected by the data collectionmodule 110 and how the prediction model is dynamically updated, will bedescribed in the following.

FIG. 2 is a flow chart showing the operation of the prediction module122 according to the embodiment of the invention. As shown in FIG. 2,the data collection module 110 collects data according to the commandtransmitted from the data processing module 120, and returns thecollected data to the data processing module 120, as shown in step 210.

Next, the period (i.e. the cycle) of the source data (i.e. the collecteddata) is obtained, as shown in step 220. If the period of the collecteddata may be obtained in advance, it may be inputted to the predictionmodule 122 in advance, and a length of the collected data is equal to atleast twice of the period. If the period of the collected data cannot beobtained in advance, the prediction module 122 predicts the period ofthe source data after the data collection module 110 collects enoughdata. The predicted period of the source data will be mentioned in thefollowing. The length of the source data T is assumed to be equal to n.The source data T is shifted by i into another data T′, wherein i rangesfrom 1 to n/2 (the maximum period is about one half of data length). Thesimilarity between T and T′ is determined by way of comparison accordingto the similarity (SIM) function, and the less calculated value of theSIM function represents the higher similarity. If the period of thesource data T is P, then the similarity between the source data T andthe data T′ shifted by P is the highest (the value of the SIM functionis the lowest). Because T′ has n/2 versions, n/2 values of the SIMfunction may be obtained. The shift value corresponding to the secondsmallest among the n/2 values of the SIM function is served as apredicted value of the period p. The shift value corresponding to thesmallest among the n/2 values of the SIM function may be the initialpoint (i=0), so it is eliminated. In addition, if the found period p isnot satisfied, more data may be further collected to predict the period.

After the period of the source data is obtained, it is possible tosegment the source data according to the period, as shown in step 230.FIG. 3A shows an example of segmenting the source data T having theperiod P. As shown in FIG. 3A, the source data T is segmented into foursegment data T1 to T4 according to the period P, wherein the source datarepresents the temperature, the vertical axis represents thetemperature, and the horizontal axis represents the sense time point.

Next, the segment data are stacked, as shown in step 240. FIG. 3B showsa result after the segment data T1 to T4 of FIG. 3A are stacked, whereinthe vertical axis represents the temperature, and the horizontal axisrepresents the time point.

Next, it is to find the trend of the source data, as shown in step 250.In finding the trend of the source data, the statistical value of eachsegment data at each time point may be calculated. In this embodiment,the average and the variance value are illustrated as an example. InFIG. 3B, for example, the average value (19.34) and the variance value(0.53) of the segment data T1 to T4 at the time point 1 are calculated.If the variance value is less than a threshold value, the average valuesatisfies the confidence level and the error tolerance allowed by theuser. That is, the data processing module 120 may return the averagevalue to the user. Oppositely, if the variance value is greater than thethreshold value, the average value does not satisfy the confidence leveland the error tolerance allowed by the user. Thus, the data processingmodule 120 informs the data collection module 110 to collect data andreturn the collected data to the user. The setting of the thresholdvalue is determined according to the user parameter and the dataproperty, wherein the user parameter are example a confidence level, anerror tolerance, a sense probability (or a non-parametric model) and thelike. When the error tolerance gets larger, the power-saving becomeshigher. When the confidence level gets higher, the power-saving and theerror rate become lower. When the detection probability gets higher, thepower-saving and the error rate become lower. The higher detectionprobability represents the more detection times, the lower opportunityof power-saving, and the lower opportunity of the returned data havingerror.

Next, the prediction model is established, as shown in step 260. In theprediction model, the prediction point, the sense point, the check pointand the sense probability (or a non-parametric model) are designated. Ifthe variance value at this time point is less than the threshold value,the time point is set as the prediction point. If the time point is setas the prediction point, no data sensing is performed at this timepoint, and the average value is returned to the user. On the contrary,if the variance value at this time point is greater than the thresholdvalue, the time point is set as the sense point. If the time point isset as the sense point, data sensing is performed at this time point.

FIG. 3C shows an example of prediction points and sense points.Referring to FIGS. 3B and 3C, the variance values at the time points 2,7 and 8 are less than the threshold point, so the time points 2, 7 and 8are set as the prediction points 310, as shown in FIG. 3C. Similarly,the variance values at the time points 1, 3 to 6 are greater that thethreshold point, so the time points 1, 3 to 6 are set as the sensepoints 320, as shown in FIG. 3C.

However, in order to check whether the trend of the source data ischanged or not and to detect abnormal data, the sense probability (or anon-parametric model) at each prediction point is designated in theprediction model so that the prediction point may become the check pointaccording to its sense probability (or a non-parametric model). Byintroduction of the check point, it is possible to check whether thetrend of the source data is changed, to prevent return of errorestimated data (i.e. the returned average value may be error or not goodenough). For example, when the sense probability is 50%, it representsthat the prediction point becomes the check point by 50%. When theprediction point becomes the check point, the data collection module 110actually collects the source data at this time point (at the checkpoint). In this embodiment, when the trend of the source data is changedat a certain time point, error occurs if the estimated value (i.e., theaverage value of the previous data) is returned to the user. In order tokeep the high correctness of the returned data, it is possible to knowoccurrence of abnormal data or the changes in the trend of the sourcedata through the check point.

FIG. 3D shows an example of prediction points, sense points and checkpoints.

Illustration will be made with reference FIGS. 3C and 3D. It is assumedthat the prediction point at the time point 7 becomes the check point330 according to the sense probability (or a non-parametric model). So,as shown in FIG. 3D, the data processing module 120 returns the averagevalue to user at the time points 2 and 8 (which are prediction points).At the time points 1 and 3 to 7, which are sense points or check points,the data collection module 110 collects data and returns the collecteddata to the data processing module 120 according to the command from thedata processing module 120, and the data processing module 120 returnsactual data to the user. Consequently, the data collection module 110neither collects nor transmits data at some time points, which areprediction points, so the power consumption of the wireless sensor 112may be saved.

Next, the prediction model is dynamically updated, as shown in step 270.Because the data collection module 110 returns actual data at the sensepoint and the check point, it is possible to dynamically update theprediction model according to the received actual data in thisembodiment so that the prediction model may reflect the current trend ofdata. Consequently, it is possible to determine whether the predictionpoint is changed as the sense point, or whether the sense point ischanged as the prediction point according to actual data. This is theso-called update of the prediction model.

There are two methods in dynamic updating the prediction model. In thefirst method, the prediction module 122 calculates the new average valueand the new variance value according to the old average value, the oldvariance value, the data number and the new collected data, and thusdetermines whether the prediction model is updated or not. In the secondmethod, the prediction module 122 calculates the new average value andthe new variance value according to the newest pieces of data, and thusdetermines whether the prediction model is updated or not.

Next, the operations of the data collection module 110 and the dataprocessing module 120 will be described. FIG. 4 shows the operationflows of the data collection module 110 and the data processing module120. At beginning, the data collection module 110 receives the sensecommand (e.g., the command to make the wireless sensor 112 sense dataevery five minutes) transmitted from the data processing module 120; thewireless sensor 112 in the data collection module 110 senses and returnsdata; and the data processing module 120 establishes the predictionmodel, as shown in step 410.

More particularly, in establishing the prediction model, the dataprocessing module 120 can predict the period of data (the details arementioned hereinabove) according to the received data, and calculate apredictable degree (PD) of the prediction model. If the predictabledegree of this prediction model is unacceptable, the data processingmodule 120 continues receiving the collected data transmitted from thedata collection module 110 to establish a better prediction model. Inaddition and as mentioned hereinabove, the prediction model may furtherbe established according to the user parameter. More particularly, theuser parameters may be different at different time points. When the dataprocessing module 120 establishes a sufficiently good prediction model,the data processing module 120 again obtains a new sense command, whichincludes the position of the prediction point, the position of the sensepoint, the sense probability (or a non-parametric model), and the like,according to the user parameter and the prediction model, and thustransmits the new sense command to the data collection module 110.

Next, the execution module judges whether the current time point is alast time point in the period or not, as shown in step 420. If yes, theprocedure goes to step 425; or otherwise the procedure goes to step 430.

In the step 425, the execution module sets the time point back to thefirst time point in the period. Alternatively, the execution modulejudges whether the current time point is the prediction point or notaccording to the received sense command, as shown in step 430. If yes,the procedure goes to step 440; or otherwise the procedure goes to step435.

If the current time point is not the prediction point, it representsthat the current time point is the sense point. So, as shown in step435, the execution module 113 informs the wireless sensor 112 to performdata sensing and collecting, and returns the collected data to the dataprocessing module 120. In addition, the data processing module 120dynamically updates the prediction module (if needed) according to thereceived actually sensed data. Also, the data processing module 120returns the actually sensed data to the user.

More particularly, if needed, the data processing module 120 updates thesense command according to the updated prediction module, and transmitsnew sense command to the data collection module 110 to control its datacollection.

If the current time point is the prediction point, the execution modulejudges whether the prediction point is set as the check point or notaccording to the sense probability (or a non-parametric model), as shownin step 440. If yes, the procedure goes to the step 435; or otherwisethe procedure goes to the step 445.

Because the current time point is the prediction point but not the checkpoint, the wireless sensor 112 does not sense data. The data processingmodule 120 returns the average value of old data (i.e. the previouslysensed data) to the user, as shown in step 445.

As shown in FIG. 4, if the current time point is the prediction pointbut not the check point in the embodiment of the invention, then thewireless sensor 112 senses data. So, it is possible to reduce the timesof data transmission and data sensing and also the power consumption ofthe wireless sensor 112. In addition, if data periodicity becomes moreobvious, the prediction points get more, and the power consumption maybe saved more effectively. In addition, the introduction of the checkpoint may update the prediction model in this embodiment so that theprediction model may be adapted to the varying environment (i.e. thedata trend is in variation). When the prediction model is updated, itbecomes more and more precise.

In the embodiment of the invention, there are other ways to know theperiod of source data. For example, after the data collection modulecollects data for an interval of time, the prediction module transformsdata in time domain (shown in FIG. 5A) into data in frequency domain(shown in FIG. 5B) by way of Fourier transformation. Thereafter, the lowfrequency component of data in frequency domain is filtered out, and aperiod of data may be obtained by taking an inverse of thehigh-frequency value of data in frequency domain.

In the embodiment of the invention, the data collection may be performedusing a sliding window. That is, the latest k pieces of data values arekept to calculate the estimated value, wherein k is a positive integerand represents data freshness. The estimated value is not limited to theaverage value, but may also be the statistical value, such as a median,a mode or the average value obtained after outliers are removed.

The check point is determined according to the probability in theembodiment of the invention, but may also be determined by othermethods, such as a non-parametric model. In the non-parametric model,when new data is added to the prediction model, the difference betweenother data and new data at the corresponding time points is checked.When the number of other data having a difference less than apredetermined range is too small, the new data is judged as a by-point.If there are too many by-points at a certain time point, the time pointmay be set as the check point.

The data collection module 110 and the data processing module 120 havethe unsymmetrical architecture in the embodiment of the invention. Thatis, the computing ability of the data collection module 110 is lower,and the computing ability of the data processing module 120 is stronger.Thus, complicated prediction operations (e.g., the trend calculationoperation, dynamic adjustment of the prediction model and the like) areperformed by the data processing module 120. In addition, the senseinterval (data is sensed at some time points, and data is not sensed atother time points) may be automatically determined according to dataproperty or the user parameter, based on probability theory. Inaddition, the prediction model may further be adaptively dynamicallychanged. Thus, the durability of the battery of the wireless sensor maybe lengthened.

While the invention has been described by way of example and in terms ofa preferred embodiment, it is to be understood that the invention is notlimited thereto. On the contrary, it is intended to cover variousmodifications and similar arrangements and procedures, and the scope ofthe appended claims therefore should be accorded the broadestinterpretation so as to encompass all such modifications and similararrangements and procedures.

1. A wireless sensor network, comprising: a data processing module,outputting a sense command; and a data collection module, receiving thesense command outputted from the data processing module, and collectinga source data and returning to the data processing module, wherein: thedata processing module finds a trend of the source data to establish aprediction model; the data processing module updates the sense commandand sends the updated sense command to the data collection module basedon the established prediction model; the data collection moduledetermines whether data collection is performed or not at a sense timepoint according to the sense command; the data collection modulecollects the source data and returns to the data processing module ifdata collection is performed; the data processing module obtains apredicted data according to the previous source data if data collectionis not performed; and the data processing module shifts the source datato obtain a shifted data, the data processing module compares asimilarity between the source data and the shifted data to obtain aperiod of the source data; or the data processing module transforms thesource data from a time domain into a frequency domain, filters out alow frequency component of the transformed source data, and takes aninverse of a high-frequency value of the transformed source data toobtain the period of the source data.
 2. The wireless sensor networkaccording to claim 1, wherein the data processing module comprises: afirst data transceiver module, transceiving the source data and thesense command between the data collection module and the data processingmodule; a database, coupled to the first data transceiver module,storing the source data received by the first data transceiver module; afirst processing unit, coupled to the database, analyzing the sourcedata; and a prediction module, coupled to the first processing unit,finding the trend of the source data to establish and dynamically updatethe prediction model.
 3. The wireless sensor network according to claim2, wherein the data collection module comprises: a second datatransceiver module, transceiving the source data and the sense commandbetween the data collection module and the data processing module; awireless sensor, coupled to the second data transceiver module, sensingthe source data according to the sense command received by the seconddata transceiver module; a second processing unit, controlling thewireless sensor to return the source data to the data processing modulethrough the second data transceiver module; and an execution module,receiving the sense command received by the second data transceivermodule to determine whether the wireless sensor performs data collectionor not at the sense time point.
 4. The wireless sensor network accordingto claim 3, wherein, if the period of the source data is known, theperiod of the source data is inputted to the prediction module; and ifthe period of the source data is unknown, the prediction module predictsthe period of the source data according to the source data received bythe data collection module.
 5. The wireless sensor network according toclaim 1, wherein: the data processing module segments the source datainto a plurality of segmented data according to the period of the sourcedata, and stacks the segmented data of the source data, and the dataprocessing module calculates statistical value of the segmented data atthe sense time point to find the trend of the source data.
 6. Thewireless sensor network according to claim 5, wherein: the statisticalvalue comprises an average value and a variance value; if the variancevalue is greater than a threshold value, the data collection modulecollects the source data and returns the source data to the dataprocessing module; and if the variance value is less than the thresholdvalue, the data processing module returns the average value as thepredicted data to the user.
 7. The wireless sensor network according toclaim 6, wherein: in the prediction model, the data processing moduledefines a prediction point, a sense point, a check point and a senseprobability; if the variance value at the sense time point is greaterthan the threshold value, the sense time point is set as the sensepoint, and the wireless sensor performs data collection at the sensepoint; if the variance value at the sense time point is less than thethreshold value, the sense time point is set as the prediction point,and the wireless sensor does not perform data collection at the sensepoint; and the data collection module sets the prediction point as thecheck point according to the sense probability, and the wireless sensorperforms data collection at the check point.
 8. The wireless sensornetwork according to claim 7, wherein the data processing moduledynamically updates the prediction model according to the source datareturned by the data collection module.
 9. The wireless sensor networkaccording to claim 8, wherein when the prediction model is dynamicallyupdated, the data processing module calculates a new average value and anew variance value according to the past average value from the previoussource data, the variance value, a quantity of the source data and a newsource data and thus determines whether to update the prediction modelor not.
 10. The wireless sensor network according to claim 8, whereinwhen the prediction model is dynamically updated, the data processingmodule calculates a new average value and a new variance value accordingto a new source data and thus determines whether to update theprediction model or not.
 11. A data sensing method of a wireless sensornetwork having a first data processing unit and a second data processingunit, the method comprising: outputting a sense command, under controlof the first data processing unit; sensing a source data according tothe sense command, under control of the second data processing unit;finding a trend of the source data to establish a prediction model,under control of the first data processing unit; updating the sensecommand based on the established prediction model, under control of thefirst data processing unit; determining whether data sensing isperformed at a sense time point or not according to the updated sensecommand; sensing the source data and returning to the prediction modelif data sensing is performed, under control of the second dataprocessing unit; and obtaining a predicted data according to theprediction model, under control of the first data processing unit, ifdata sensing is not performed; segmenting the source data into aplurality of segmented data according to a period of the source data;combining the segmented data of the source data; and calculatingstatistical value of the segmented data at the sense time point to findthe trend of the source data.
 12. The method according to claim 11,further comprising: storing the sensed source data; analyzing the sourcedata, under control of the first data processing unit; and dynamicallyupdating the prediction model after the trend of the source data isfound.
 13. The method according to claim 12, further comprising:inputting the period of the source data if the period of the source datais known; and finding the period of the source data according to thesensed source data if the period of the source data is unknown.
 14. Themethod according to claim 11, wherein: the statistical value comprisesan average value and a variance value; if the variance value is greaterthan a threshold value, the source data is sensed and returned to theuser at the sense time point; and if the variance value is less than thethreshold value, the average value of the source data is returned to theuser at the sense time point.
 15. The method according to claim 14,further comprising: defining a prediction point, a sense point, a checkpoint and a sense probability in the prediction model; setting the sensetime point as the sense point if the variance value at the sense timepoint is greater than the threshold value, wherein data sensing isperformed at the sense point; and setting the prediction point as thecheck point according to the sense probability, wherein the data sensingis performed at the check point.
 16. The method according to claim 15,wherein dynamically updating the prediction model comprises: calculatinga new average value and a new variance value according to the averagevalue of the previous source data, the variance value, a quantity of thesource data and a new source data, and thus determining whether toupdate the prediction model or not.
 17. The method according to claim15, wherein dynamically updating the prediction model comprises:calculating a new average value and a new variance value according to anew source data, and thus determining whether to update the predictionmodel or not.
 18. A data sensing method of a wireless sensor networkhaving a first data processing unit and a second data processing unit,the method comprising: outputting a sense command, under control of thefirst data processing unit; sensing an source data according to thesense command, under control of the second data processing unit; findinga trend of the source data to establish a prediction model, undercontrol of the first data processing unit; updating the sense commandbased on the established prediction model, under control of the firstdata processing unit; determining whether data sensing is performed at asense time point or not according to the updated sense command; sensingthe source data and returning to the prediction model if data sensing isperformed, under control of the second data processing unit; obtaining apredicted data according to the prediction model, under control of thefirst data processing unit, if data sensing is not performed; andfinding a period of the source data, comprising: shifting the sourcedata to obtain a shifted data and comparing a similarity between thesource data and the shifted data to obtain the period of the sourcedata; or transforming the source data from a time domain to a frequencydomain, filtering out a low frequency component of the transformedsource data, and taking an inverse of a high-frequency value of thetransformed source data to obtain the period of the source data.
 19. Themethod according to claim 18, further comprising: storing the sensedsource data; analyzing the source data, under control of the first dataprocessing unit; and dynamically updating the prediction model after thetrend of the source data is found.
 20. The method according to claim 19,further comprising: inputting the period of the source data if theperiod of the source data is known; and finding the period of the sourcedata according to the sensed source data if the period of the sourcedata is unknown.